home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1993 / Internet Info CD-ROM (Walnut Creek) (1993).iso / standards / ansi / X3T9 / area05 / 90-021r0.txt < prev    next >
Text File  |  1992-05-12  |  11KB  |  183 lines

  1.   OKLAHOMA CITY OPERATIONS         
  2. _________________________________________________________________
  3.  
  4.                                                   Date: 1/8/90
  5.  
  6. John Lohmeyer
  7. Chairman X3T9.2
  8.  
  9. Subject: Additional SCSI Caching Control
  10.  
  11.  
  12.      Prior  to  the forwarding of SCSI-2 I failed to note the omission  of  an 
  13. important caching control function. My recollection is that the capability  to 
  14. overtly control the number of cache segments was in the original proposal.  At 
  15. some early stage of the process this important function was dropped.
  16.  
  17.      Since  I failed to notice prior to forwarding that the function  was  not 
  18. included,  I  propose  that  it be documented and  added  to  SCSI-3.  If  the 
  19. committee  is ill-advised enough to bring SCSI-2 back for  technical  changes, 
  20. rather  than going ahead with the long needed publication, I would  of  course 
  21. request that it be added to SCSI-2.
  22.  
  23.      In  addition  to not noticing when it was deleted, I do  not  recall  any 
  24. rationale for removing it. It appears that its omission mistakenly  prejudices 
  25. the  standard  in  favor  of host (including HBA)  based  caching.  While  the 
  26. embedded  SCSI  devices can optimize their performance based upon  apriori  or 
  27. learned  information,  many system providers will want to be able  to  control 
  28. more of the SCSI based caching than SCSI-2 currently provides for.
  29.  
  30.      The most obvious omission is the ability to control the number of  active 
  31. segments.  The attached proposal, Alternative 1, incorporates  the  capability 
  32. we,  and some other vendors, provide in a Vendor Not So Unique Page Code  38h. 
  33. Alternative  2 expands this capability and provides  additional  opportunities 
  34. for  caching  control.  Since it provides more  capability,  I  recommend  the 
  35. adoption of Alternative 2.
  36.  
  37.  
  38.  
  39.                                    G.E. Milligan
  40.                                    Manager of Product Planning
  41.  
  42.                           Alternative 1
  43.  
  44. Caching Page 
  45.  
  46.                            Caching Page
  47.  
  48. ==============================================================================
  49.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  50. Byte |        |        |        |        |        |        |        |        |
  51. ==============================================================================
  52.  0   |   PS   |Reserved|        Page Code (08h)                              |
  53. -----|-----------------------------------------------------------------------|
  54.  1   |                          Page Length (0Ah)                            |
  55. -----|-----------------------------------------------------------------------|
  56.  2   |   Number of Cache Segments                 |  WCE   |   MF   |  RCD   |
  57. -----|-----------------------------------------------------------------------|
  58.  3   |   Demand Read Retention Priority  |     Write Retention Priority      |
  59. -----|-----------------------------------------------------------------------|
  60.  4   | (MSB)                                                                 |
  61. -----|---                       Disable Pre-fetch Transfer Length         ---|
  62.  5   |                                                                 (LSB) |
  63. -----|-----------------------------------------------------------------------|
  64.  6   | (MSB)                                                                 |
  65. -----|---                       Minimum Pre-fetch                         ---|
  66.  7   |                                                                 (LSB) |
  67. -----|-----------------------------------------------------------------------|
  68.  8   | (MSB)                                                                 |
  69. -----|---                       Maximum Pre-fetch                         ---|
  70.  9   |                                                                 (LSB) |
  71. -----|-----------------------------------------------------------------------|
  72.  10  | (MSB)                                                                 |
  73. -----|---                       Maximum Pre-fetch Ceiling                 ---|
  74.  11  |                                                                 (LSB) |
  75. ==============================================================================
  76.  
  77.  
  78.   The  Number of Segments (bits 3 through 7 of Byte 2) advises the  drive  how 
  79. many segments the host requests that the cache be divided into. 
  80.  
  81.                           Alternative 2
  82.  
  83. Caching Page 
  84.  
  85.                            Caching Page
  86.  
  87. ==============================================================================
  88.   Bit|   7    |   6    |   5    |   4    |   3    |   2    |   1    |   0    |
  89. Byte |        |        |        |        |        |        |        |        |
  90. ==============================================================================
  91.  0   |   PS   |Reserved|        Page Code (08h)                              |
  92. -----|-----------------------------------------------------------------------|
  93.  1   |                          Page Length (12h)                            |
  94. -----|-----------------------------------------------------------------------|
  95.  2   |   FV   |  ABPF  |  SLOG  |  DISC  |  SIZE  |  WCE   |   MF   |  RCD   |
  96. -----|-----------------------------------------------------------------------|
  97.  3   |   Demand Read Retention Priority  |     Write Retention Priority      |
  98. -----|-----------------------------------------------------------------------|
  99.  4   | (MSB)                                                                 |
  100. -----|---                       Disable Pre-fetch Transfer Length         ---|
  101.  5   |                                                                 (LSB) |
  102. -----|-----------------------------------------------------------------------|
  103.  6   | (MSB)                                                                 |
  104. -----|---                       Minimum Pre-fetch                         ---|
  105.  7   |                                                                 (LSB) |
  106. -----|-----------------------------------------------------------------------|
  107.  8   | (MSB)                                                                 |
  108. -----|---                       Maximum Pre-fetch                         ---|
  109.  9   |                                                                 (LSB) |
  110. -----|-----------------------------------------------------------------------|
  111.  10  | (MSB)                                                                 |
  112. -----|---                       Maximum Pre-fetch Ceiling                 ---|
  113.  11  |                                                                 (LSB) |
  114. -----|-----------------------------------------------------------------------|
  115.  12  |                       Number of Cache Segments                        |
  116. -----|-----------------------------------------------------------------------|
  117.  13  | (MSB)                                                                 |
  118. -----|---                    Cache Segment Size                           ---|
  119.  14  |                                                                 (LSB) |
  120. -----|-----------------------------------------------------------------------|
  121.  15  |                        Number of FIFO Segments                        |
  122. -----|-----------------------------------------------------------------------|
  123.  16  | (MSB)                                                                 |
  124. -----|---                     FIFO Segment Size                           ---|
  125.  17  |                                                                 (LSB) |
  126. -----|-----------------------------------------------------------------------|
  127.  18  |                          Reserved                                     |
  128. -----|-----------------------------------------------------------------------|
  129.  19  |                          Reserved                                     |
  130. ==============================================================================
  131.  
  132.   
  133.   The  FIFO valid (FV) bit (Bit 7 Byte 2), when set to one, requests that  the 
  134. SCSI  device assign a portion of the cache facility according to the SIZE  bit 
  135. and Bytes 15 through 17. If FV is set to zero, Bytes 15-17 are not valid.
  136.  
  137.   The  Abort  Pre-Fetch (ABPF) bit (Bit 6 Byte 2), when set to  one,  requests 
  138. that the SCSI device abort the pre-fetch upon selection. When set to zero, the 
  139. termination of any active pre-fetch is operation and/or vendor specific.
  140.  
  141.   The  Statistical Logging (SLOG) enable bit (Bit 5 Byte 2), when set to  one, 
  142. requests  that  the  SCSI device perform caching  performance  logging  during 
  143. subsequent   operations.  The  logging  may  be  used  for   internal   device 
  144. optimization  or  reported by the Log Sense command for  optimization  by  the 
  145. host.  When  set to zero, SLOG requests that caching  performance  logging  be 
  146. disabled  to reduce overhead time or to prevent non pertinent operations  from 
  147. impacting tuning values. 
  148.  
  149.   The Discontinuity (DISC) bit (Bit 4 Byte 2), when set to one, requests  that 
  150. the  SCSI device continue the pre-fetch across time discontinuities,  such  as 
  151. across  cylinders (or tracks in an embedded servo drive), up to the limits  of 
  152. the buffer space available for pre-fetch. When set to zero, the DISC  requests 
  153. that pre-fetches be truncated (or wrapped) at time discontinuities.
  154.  
  155.   The  Size Enable (SIZE) bit (Bit 3 Byte 2), when set to one, indicates  that 
  156. the  Cache Segment Size, and/or FIFO Segment Size if FV equals one, are to  be 
  157. used  to  control caching segmentation. When SIZE equals zero,  the  Initiator 
  158. requests that the Number of Cache Segments, and/or Number of FIFO Segments  if 
  159. FV  equals one, are to be used to control caching  segmentation.  Simultaneous 
  160. use of both number of segments and segment size is vendor specific. 
  161.  
  162.   The  Number of Cache Segments (Byte 12) advises the drive how many  segments 
  163. the host requests that the cache be divided into. 
  164.  
  165.   The  Cache  Segment  Size field (Bytes 13 and 14)  indicates  the  requested 
  166. segment  size  in Bytes. This standard assumes that this field is  valid  only 
  167. when the SIZE bit is one.
  168.  
  169.   The  Number of FIFO Segments (Byte 15), with SIZE equals zero,  advises  the 
  170. drive how many segments the host requests that the SCSI device allocate for  a 
  171. FIFO  function  when  all  other cache segments are occupied  by  data  to  be 
  172. retained.  If  the  number is at least one, caching  functions  in  the  other 
  173. segments  need  not  be impacted by cache misses to perform  the  SCSI  buffer 
  174. function. The impact of Number of FIFO Segments equal 0 is vendor specific.
  175.  
  176.   The  FIFO  Segment  Size field (Bytes 16 and  17)  indicates  the  requested 
  177. segment  size  in Bytes. This standard assumes that this field is  valid  only 
  178. when the SIZE bit and FV equals one.
  179.  
  180.   
  181.  
  182.   
  183.